<template>
  <div style="height:100vh;overflow: hidden;
  background-image: url('/imgs/login/bj.jpg');background-size: cover;
background-repeat: no-repeat;background-position: center;">
    <el-container style="padding:30px;">
      <el-main  style="display: flex; justify-content: center; align-items: center; height: 100vh;">
            <el-card style="
                      width: 400px;
                      padding: 20px;
                      background-color: rgba(255, 255, 255, 0.1); /* 半透明白色背景 */
                      border-radius: 5px;
                      margin: 0px auto;
                      box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
                      " align="center">
              <h3 style="text-align: center;">用户登录</h3>
              <el-form label-position="left">
                <el-form-item label="用户名">
                  <el-input placeholder="请输入用户名" v-model="user.username"></el-input>
                </el-form-item>
                <el-form-item label="密&nbsp;&nbsp;&nbsp;码">
                  <el-input placeholder="请输入密码" type="password" v-model="user.password"></el-input>
                </el-form-item>
                <el-form-item>
                  <el-button type="primary" style="width:100%" @click="login">登录</el-button>
                </el-form-item>
              </el-form>
              <div style="text-align: center;color: #666;font-size: 14px;padding: 10px 0;">
                (体验账号:tom 密码:123456)
              </div>
            </el-card>
      </el-main>
    </el-container>
  </div>
</template>

<script setup>
import {ref} from "vue";
import axios from "axios";
import {ElMessage} from "element-plus";
import router from "@/router";

const user = ref({username: '', password: ''});
const login = () => {
  //console.log(user.value);
  //1.给后端发送登录请求,需要借助axios工具，注意：axios需要安装并导入！
  axios.post(BASE_URL+'/oa1/user/login',user.value)
      .then((response)=>{
        //2.发送请求后，服务器处理完毕会给客户端响应结果，前端需要在回调函数中处理这个响应结果
        //response是响应对象,我们可以从响应对象response的data中得到后端服务器的响应数据
        //console.log(response);
        console.log(response.data);//后端返回的JsonResult
        console.log(response.data.data);//JsonResult的data,这里是userVO
        //3.根据后端的响应结果做前端处理
        if(response.data.code == 2000){
          ElMessage.success('登录成功!');
          //6.登录成功后,将userVO存入localStorage中
          /* localStorage只能存储字符串类型的键值对!!! */
          localStorage.setItem('user',JSON.stringify(response.data.data));
          //4.登录成功后,跳转至HomeView,再重定向到用户列表页
          router.push('/');
        }else{
          ElMessage.error(response.data.msg);
          //5.登录失败,清空输入框
          user.value = {username: '', password: ''};
        }
      })
}
</script>

<style scoped>

</style>